Information processing system, information processing apparatus, image forming apparatus, information processing method, and computer program product

ABSTRACT

An information processing apparatus includes a screen information request receiver, an application identification information specifying unit, a screen information transmitter. The screen information request receiver receives, from a device, a screen information request used to request screen information for providing an application. The screen information includes at least dealer information representing a dealer that sells the device. The application identification information specifying unit specifies application identification information corresponding to the dealer information included in the screen information request based on application correspondence relation information representing a correspondence relation between the dealer information and the application identification information identifying an application available to the device. The screen information transmitter transmits, to the device, the screen information for providing the application identified by the application identification information specified by the application identification information specifying unit as a response to the screen information request received by the screen information request receiver.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation application of U.S. application Ser.No. 16/011,814, filed on Jun. 19, 2018, which is a continuationapplication of U.S. application Ser. No. 15/451,790, filed on Mar. 7,2017, which claims priority under 35 U.S.C. § 119 to Japanese PatentApplication No. 2016-054416, filed on Mar. 17, 2016 and Japanese PatentApplication No. 2016-197074, filed on Oct. 5, 2016, the entire contentsof each of which are incorporated herein by reference herein.

BACKGROUND OF THE INVENTION 1. Field of the Invention

The present invention relates to an information processing system, aninformation processing apparatus, an image forming apparatus, aninformation processing method, and a program.

2. Description of the Related Art

In recent years, as various communication devices such as a mobile phoneor a portable information terminal are widely spread, applications thatcan be used on communication devices have been actively developed.

For example, in Japanese Unexamined Patent Application Publication No.2010-182309, a technique is disclosed, in which a server introduces anapplication, and the introduced application is selected in the deviceside, so that the selected application is downloaded.

However, the technique discussed in Japanese Unexamined PatentApplication Publication No. 2010-182309 fails to consider a case wherethe application to be used for the device is different for each dealerthat sells the device. For this reason, an application that is notallowed to use in the device may be erroneously introduced to thedevice. Therefore, it is difficult to introduce the application properlyavailable to the device.

SUMMARY OF THE INVENTION

According to one aspect of the present invention, an informationprocessing system includes one or more devices and an informationprocessing apparatus connectable to the devices through a network. Theinformation processing apparatus includes a screen information requestreceiver, an application identification information specifying unit, ascreen information transmitter. The screen information request receiverreceives, from the device, a screen information request used to requestscreen information for providing an application. The screen informationincludes at least dealer information representing a dealer that sellsthe device. The application identification information specifying unitspecifies application identification information corresponding to thedealer information included in the screen information request based onapplication correspondence relation information representing acorrespondence relation between the dealer information and theapplication identification information identifying an applicationavailable to the device. The screen information transmitter transmits,to the device, the screen information for providing the applicationidentified by the application identification information specified bythe application identification information specifying unit as a responseto the screen information request received by the screen informationrequest receiver. The device includes a screen information requesttransmitter, a screen information receiver, and a display control unit.The screen information request transmitter transmits the screeninformation request to the information processing apparatus. The screeninformation receiver receives the screen information from theinformation processing apparatus as a response to the screen informationrequest. The display control unit performs control for displaying ascreen based on the screen information received by the screeninformation receiver.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram illustrating an exemplary configuration of aninformation processing system;

FIG. 2 is a diagram illustrating an exemplary hardware configuration ofan MFP;

FIG. 3 is a diagram illustrating an exemplary software configuration ofthe MFP;

FIG. 4 is a diagram illustrating an exemplary function of the MFP;

FIG. 5 is a diagram illustrating an exemplary operational screen;

FIG. 6 is a diagram illustrating an exemplary initial screen;

FIG. 7 is a diagram illustrating an exemplary input screen;

FIG. 8 is a diagram illustrating an exemplary confirmation screen;

FIG. 9 is a diagram illustrating exemplary information stored in asetting information storing unit;

FIG. 10 is a diagram illustrating an exemplary URL request;

FIG. 11 is a diagram illustrating an exemplary URL received as aresponse to the URL request;

FIG. 12 is a diagram illustrating an exemplary screen informationrequest;

FIG. 13 is a diagram illustrating exemplary displayed information;

FIG. 14 is a diagram illustrating an exemplary application list screen;

FIG. 15 is a diagram illustrating an exemplary installation instructionscreen;

FIG. 16 is a diagram illustrating an exemplary installation confirmationscreen;

FIG. 17 is a diagram illustrating an exemplary hardware configuration ofa management server;

FIG. 18 is a diagram illustrating an exemplary function of themanagement server;

FIG. 19 is a diagram illustrating exemplary connection relationinformation;

FIG. 20 is a diagram illustrating an exemplary hardware configuration ofan app market server;

FIG. 21 is a diagram illustrating an exemplary function of the appmarket server;

FIG. 22 is a diagram illustrating an exemplary device model ID table;

FIG. 23 is a diagram illustrating exemplary third correspondencerelation information;

FIG. 24 is a diagram illustrating an exemplary organization ID table;

FIG. 25 is a diagram illustrating exemplary fourth correspondencerelation information;

FIG. 26 is a diagram illustrating exemplary application detailinformation;

FIG. 27 is a diagram illustrating an exemplary hardware configuration ofan application server;

FIG. 28 is a diagram illustrating an exemplary function of theapplication server;

FIG. 29 is a sequence diagram illustrating an exemplary operationprocedure of the information processing system;

FIG. 30 is a sequence diagram illustrating an exemplary operationprocedure of the information processing system;

FIG. 31 is a diagram illustrating exemplary connection relationinformation according to a second embodiment; and

FIG. 32 is a diagram illustrating exemplary connection relationinformation according to a third embodiment.

The accompanying drawings are intended to depict exemplary embodimentsof the present invention and should not be interpreted to limit thescope thereof. Identical or similar reference numerals designateidentical or similar components throughout the various drawings.

DESCRIPTION OF THE EMBODIMENTS

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the presentinvention.

As used herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise.

In describing preferred embodiments illustrated in the drawings,specific terminology may be employed for the sake of clarity. However,the disclosure of this patent specification is not intended to belimited to the specific terminology so selected, and it is to beunderstood that each specific element includes all technical equivalentsthat have the same function, operate in a similar manner, and achieve asimilar result.

An object of an embodiment is to provide an information processingsystem, an information processing apparatus, an image forming apparatus,an information processing method, and a program capable of introducingan application properly available to the device.

An information processing system, an information processing apparatus,an image forming apparatus, an information processing method, and aprogram according to embodiments will now be described in details withreference to the accompanying drawings. In the following description, amultifunction peripheral (MFP) will be described as an example of theimage forming apparatus. Note that the device included in theinformation processing system is not limited to the image formingapparatus, and may include other devices such as a camera, a projector,an interactive whiteboard (electronic blackboard), a terminal dedicatedto a TV conference/Web conference system, a digital signage, aproduction printer, a 3D printer, and a facsimile. Note that the MFP isa device having a plurality of different functions such as a copierfunction, a scanner function, a printer function, and a facsimilefunction.

First Embodiment

FIG. 1 is a diagram schematically illustrating an exemplaryconfiguration of the information processing system 100 according to theembodiment. As illustrated in FIG. 1, the information processing system100 includes an MFP 1, a management server 2, an app market server 3,and an application server 7 connected to each other through a network 8.

The management server 2 manages a uniform resource locator (URL) forspecifying the app market server 3 serving as a communicationdestination of the MFP 1. The management server 2 receives a URL requestfrom the MFP 1 and transmits a URL corresponding to the received URLrequest to the MFP 1 as a response. A specific configuration of themanagement server 2 will be described below in more details. Note that,although the URL is exemplified as specification information forspecifying the app market server 3, the specification information is notlimited thereto. For example, the specification information may includean Internet protocol (IP) address, a domain name, and the like. The IPaddress is a code for determining a device that transmits or receivespackets in the IP. The domain name is a part of the name for identifyingan individual computer (device) in the IP network. Typically, the domainname is registered on the computer network in combination with the IPaddress. The specification information may be the IP address, the domainname, or a combination thereof. That is, the specification informationmay be at least one of the IP address and the domain name.

The app market server 3 is an example of the “information processingapparatus” and transmits screen information for each applicationavailable to the MFP 1, such as a user policy of the application or aWeb page for downloading the application. In other words, the app marketserver 3 transmits, to the MFP 1, screen information serving as a sourceof the Web page for providing an application available to the MFP 1.Although it will be described below in more details, as the screeninformation request is received from the MFP 1, the app market server 3specifies one or more applications available to the MFP 1 based ondealer information contained in the received screen information request(information representing a dealer who sells the MFP 1). In addition,screen information for providing one or more applications thus specifiedis provided as a response to the screen information request.

In this example, it is assumed that the following application andsoftware are installed in the MFP 1 in advance: an application (in thefollowing description, referred to as an “app market application”) forobtaining the URL from the management server 2, obtaining the screeninformation from the app market server 3 corresponding to the obtainedURL, creating a screen based on this obtained screen information (in thefollowing description, referred to as an “application list screen”), anddisplaying the screen in the MFP 1; and software for providing afunction of controlling installation of the application selected by auser out of the applications displayed on the application list screen inthe MFP 1 (hereinafter, simply referred to as an “installer”). In thisexample, the function of the app market application is implemented usingan application for providing a Web browser function (hereinafter, simplyreferred to as a “browser application”). In this example, the browserapplication is also installed in the MFP 1 in advance. The MFP 1 will bedescribed below in more details.

The application server 7 stores a plurality of applications andtransmits a target application to the MFP 1 in response to a requestfrom the MFP 1.

For simplicity purposes, a single MFP 1 is illustrated as a deviceincluded in the information processing system 100 in FIG. 1. However,without limiting thereto, the number of the devices included in theinformation processing system 100 or their types may be selectedarbitrarily. Similarly, the number of the app market servers 3 includedin the information processing system 100 may be selected arbitrarily.For example, one or more app market servers 3 may be provided for eachcountry or for each province.

Next, a hardware configuration of the MFP 1 will be described withreference to FIG. 2. As illustrated in FIG. 2, the MFP 1 includes a mainbody 10 capable of implementing various functions such as a copierfunction, a scanner function, a facsimile function, and a printerfunction, and an operation unit 20 for receiving a user's operation.Note that “a user's operation is received” also means that “informationinput according to the user's operation is received (including a signalrepresenting a coordinate value on the screen).” The main body 10 andthe operation unit 20 are communicably connected to each other through adedicated communication path 30. The communication path 30 may complywith, for example, a universal serial bus (USB) standard or any otherstandard regardless of a wired or wireless manner. The main body 10 hasat least a plotter or a scanner. In addition, the operation unit 20performs transmission of the screen information request and reception ofthe screen information and has an app market application (correspondingto a “list display application”) capable of displaying applications thatthe MFP 1 can provide as a list.

The main body 10 can perform an operation corresponding to an operationreceived through the operation unit 20. In addition, the main body 10 iscommunicable with an external device such as a client personal computer(PC) and performs an operation corresponding to an instruction receivedfrom an external device.

First, a hardware configuration of the main body 10 will be described.As illustrated in FIG. 2, the main body 10 includes a central processingunit (CPU) 11, a read only memory (ROM) 12, a random access memory (RAM)13, a hard disk drive (HDD) 14, a communication interface (I/F) 15, aconnection I/F 16, and an engine unit 17 connected to each other througha system bus 18.

The CPU 11 generally controls the operations of the main body 10. TheCPU 11 controls operations of the entire main body 10 by executing aprogram stored in the ROM 12 or the HDD 14 by using the RAM 13 as a workarea to implement various functions such as a copier function, a scannerfunction, a facsimile function, and a printer function as describedabove.

The communication I/F 15 is an interface for communication with thenetwork 8. The connection I/F 16 is an interface for communicating withthe operation unit 20 through the communication path 30.

The engine unit 17 is hardware for performing processes other thangeneric information processing and communication process forimplementing a copier function, a scanner function, a facsimilefunction, and a printer function. For example, the engine unit 17 has ascanner (image reader) for scanning and reading an original image, aplotter (image forming unit) for printing data on a sheet material suchas paper, a facsimile unit for performing facsimile communication, andthe like. The engine unit 17 may further have a particular optionalfunction such as a finisher for sorting the printed sheets or anautomatic document feeder (ADF) for automatically feeding originaldocuments.

Next, a hardware configuration of the operation unit 20 will bedescribed. As illustrated in FIG. 2, the operation unit 20 includes aCPU 21, a ROM 22, a RAM 23, a flash memory 24, a communication I/F 25, aconnection I/F 26, and an operation panel 27 connected to each otherthrough a system bus 28.

The CPU 21 generally controls operations of the operation unit 20. TheCPU 21 controls the operations of the entire operation unit 20 byexecuting a program stored in the ROM 22 or the flash memory 24 by usingthe RAM 23 as a work area to implement various functions described belowsuch as a display function for displaying information (image)corresponding to the input received from a user.

The communication I/F 25 is an interface for connection to the network8. The connection I/F 26 is an interface for communication with the mainbody 10 through the communication path 30.

The operation panel 27 receives various types of inputs corresponding toa user's operation and displays various types of information (such asinformation corresponding to the received operation, informationrepresenting an operation status of the MFP 1, and informationrepresenting a setting state). In this example, the operation panel 27is a liquid crystal display (LCD) provided with a touch panel function,but not limited thereto. For example, the operation panel 27 may be anorganic electroluminescent (EL) display device provided with a touchpanel function. In addition to or instead of such devices, an operationunit such as a hardware key or a display unit such as a lamp may also beprovided.

Next, a software configuration of the MFP 1 will be described. FIG. 3 isa schematic diagram illustrating an exemplary software configuration ofthe MFP 1. As illustrated in FIG. 3, the main body 10 includes anapplication layer 101, a service layer 102, and an operating system (OS)layer 103. Entities of the application layer 101, the service layer 102,and the OS layer 103 are various software programs stored in the ROM 12or the HDD 14. Various functions are provided when the CPU 11 executessuch programs.

The software of the application layer 101 is application software (inthe following description, simply referred to as an “app”) for providinga predetermined function by operating hardware resources. For example,the app may include a copier app for providing a copier function, ascanner app for providing a scanner function, a FAX app for providing aFAX function, a printer app for providing a printer function, and thelike.

The software of the service layer 102 is software interposed between theapplication layer 101 and the OS layer 103 to provide an interface forusing hardware resources of the main body 10 to the app. Morespecifically, the software of the service layer 102 includes softwarefor receiving an operation request for the hardware resources andproviding a function for controlling an operation request. The operationrequest received by the service layer 102 may include a scanner readingrequest, a plotter print request, and the like.

Note that the interface function of the service layer 102 is provided tothe application layer 201 of the operation unit 20 as well as theapplication layer 101 of the main body 10. That is, the applicationlayer 201 (app) of the operation unit 20 can also implement the functionof the hardware resource (such as the engine unit 17) of the main body10 using the interface function of the service layer 102. For example,the interface function of the service layer 102 is provided using theWeb API. The operation unit 20 and the main body 10 can communicate witheach other through a network such as the communication path 30.

The software of the OS layer 103 is basic software (operating system(OS)) for providing a basic function for controlling hardware of themain body 10. The software of the service layer 102 converts a hardwareresource use request from various apps into a command analyzable by theOS layer 103 and transmits it to the OS layer 103. In addition, as thecommand is executed by the software of the OS layer 103, the hardwareresource performs the operation corresponding to the request from theapp.

Similarly, the operation unit 20 has an application layer 201, a servicelayer 202, and an OS layer 203. The application layer 201, the servicelayer 202, and the OS layer 203 of the operation unit 20 have the samehierarchical structure as that of the main body 10. However, a functionprovided by the app of the application layer 201 or an operation requesttype receivable by the service layer 202 is different from those of themain body 10. According to the embodiment, the software of the servicelayer 202 includes an installer and the like. The app of the applicationlayer 201 may be software for providing a predetermined function byoperating hardware resources of the operation unit 20. However, the appof the application layer 201 is typical software for providing userinterface (UI) function for performing operation and display withrespect to the functions of the main body 10 (such as a copier function,a scanner function, a FAX function, and a printer function). The app ofthe application layer 201 includes a browser application, an app marketapplication, and the like.

Note that, according to the embodiment, for keeping independency of thefunction, the software of the OS layer 103 of the main body 10 isdifferent from that of the OS layer 203 of the operation unit 20. Thatis, the main body 10 and the operation unit 20 are operatedindependently using different operating systems. For example, the NetBSD(registered trademark) may be employed as the software of the OS layer103 of the main body 10, and the Android (registered trademark) may beemployed as the software of the OS layer 203 of the operation unit 20.

As described above, in the MFP 1 according to the embodiment, the mainbody 10 and the operation unit 20 are operated in different operatingsystems. Therefore, communication between the main body 10 and theoperation unit 20 is performed as communication between differentdevices instead of communication between processes in a common device.Such an operation (command communication) includes an operation fortransmitting the information received by the operation unit 20(instruction from a user) to the main body 10 or an operation fornotifying the operation unit 20 of an event from the main body 10. Here,the function of the main body 10 may be implemented by performingcommand communication from the operation unit 20 to the main body 10. Inaddition, the event notified of from the main body 10 to the operationunit 20 may include an execution status of the operation in the mainbody 10, a setting in the main body 10, and the like.

According to the embodiment, power is supplied to the operation unit 20from the main body 10 through the communication path 30. Therefore, thepower control of the operation unit 20 may be performed separately(independently) from the power control of the main body 10.

Next, the functions of the MFP 1 will be described. FIG. 4 is a blockdiagram illustrating exemplary functions of the MFP 1. As illustrated inFIG. 4, the MFP 1 includes a display control unit 111, a setting unit112, a storage control unit 113, a setting information storing unit 114,an URL request transmitter 115, an URL receiver 116, a screeninformation request transmitter 117, a screen information receiver 118,and an installer 119. Although FIG. 4 mainly illustrates the functionsaccording to the embodiment for simplicity purposes, other functions ofthe MFP 1 may also be included without limiting thereto.

The display control unit 111 performs control for displaying variousscreens on the operation panel 27 (display unit). The display controlunit 111 according to the embodiment performs control for displaying anoperational screen for allowing various operations on the operationpanel 27. In addition, the display control unit 111 according to theembodiment also performs control for displaying the application listscreen on the operation panel 27. A specific example of the applicationlist screen will be described below.

FIG. 5 is a diagram illustrating an exemplary operational screen. Onthis operational screen, an icon 5 for activating the app marketapplication is displayed. Here, an operation example when the app marketapplication is initially activated will be described. In this example,when a user touches the icon 5, the app market application is activated,and the initial screen as illustrated in FIG. 6 is displayed on theoperation panel 27. If an operation of pressing a display element (UI)representing an arrow above the “NEXT” is received, an input screen usedfor inputting regional information representing a region where the MFP 1is used (although a region where the MFP 1 is sold is assumed in thisexample, a region where the MFP 1 is leased or rented may also bepossible without a particular limitation) or dealer informationregarding a dealer that sells the MFP 1 is displayed on the operationpanel 27, as illustrated in FIG. 7. Settings corresponding to variousinputs are stored as described later. Then, if an operation of pressinga display element (UI) representing an arrow above the “NEXT” on thisinput screen is received, a confirmation screen for promptingconfirmation of a user policy (a policy for providing a user with thescreen information) is displayed on the operation panel 27 asillustrated in FIG. 8. On this confirmation screen, if an operation ofselecting an item “I AGREE TO USER POLICY” is received, and an operationof pressing a display element (UI) representing “OK” is received, theapp market application performs control for transmitting a URL requestdescribed later to the management server 2 using the stored setting. Thesubsequent operations will be described later in more details. Note thatwhen the app market application is activated in the second and sequenttimes, the screens illustrated in FIGS. 6 to 8 are not displayed, andthe activated app market application performs a process of transmittingthe URL request, which will be described later, to the management server2 using the stored setting. Here, the app market application(corresponding to the “list display application”) receives an input ofthe dealer information at least at the time of an initial activation andadds the input dealer information to the screen information requestdescribed later. The screen information request will be described belowin more details.

Returning to FIG. 4, the setting unit 112 sets the dealer informationrepresenting a dealer that sells the MFP 1 or the regional informationrepresenting a region where the MFP 1 is used according to the input forinstructing the dealer information or the regional information. In thisexample, the setting unit 112 may set the dealer information or theregional information in accordance with the input through the inputscreen described above.

The storage control unit 113 performs control for storing the dealerinformation or the regional information set by the setting unit 112. Inthis example, the storage control unit 113 performs control for storingthe dealer information or the regional information set by the settingunit 112 in the setting information storing unit 114 as settinginformation. The setting information storing unit 114 may also storedevice identification information (serial number) for uniquelyidentifying the MFP 1. FIG. 9 is a diagram illustrating exemplaryinformation stored in the setting information storing unit 114 (referredto as “setting information”). In this example, the setting informationstoring unit 114 stores setting information including the deviceidentification information, the dealer information, and the regionalinformation. In this example, the device identification information isrepresented with nine digit characters, including upper four digitcharacters used to identify a device model (device model information)and lower five digit characters indicating a unique code allocated tothe device. Such a combination forms information for uniquelyidentifying the device (device identification information). In addition,in the example of FIG. 9, the dealer information is represented witheight digit characters in which the leftmost character indicates aregion. For example, the numeral “1” denotes “Japan,” the numeral “2”denotes “Unite States of America,” the numeral “3” denotes “Europe,” andthe numeral “4” denotes “Asia.” The second to sixth characters from theleft indicate information for identifying a dealer (seller). The seventhto eighth characters from the left indicate a code for detecting aninput error (checksum). Note that encryption may be employed for theentire information. The regional information is information representinga region where the MFP 1 is used, and the abbreviation “JP” denotes“Japan.”

The URL request transmitter (specification information requesttransmitter) 115 transmits, to the management server 2, a URL request(specification information request) for requesting a URL (specificationinformation) for specifying the app market server 3 serving as acommunication destination. The URL request contains at least one of thedealer information, the regional information, and the deviceinformation. In this example, the URL request transmitter 115 transmits,to the management server, a URL request for requesting a URL of the appmarket server 3 containing the device identification information storedin the setting information storing unit 114 (as an example of the deviceinformation for specifying the device), the regional information, andthe dealer information. However, the present invention is not limitedthereto. Depending on the access information managed by the managementserver 2, for example, the URL request may contain any one of the dealerinformation, the regional information, and the device identificationinformation or may contain two or more of them. FIG. 10 is a diagramillustrating an exemplary URL request. The parameter “device id” in theURL request of FIG. 10 indicates the device identification information,and the parameter “region_code” indicates the regional information. Inaddition, the parameter “dealer_code” indicates dealer information. Thedescription “parameter name=value” following the question mark “?” andthe subsequent mark “&” is based on a standard parameter descriptionformat called “QUERY parameter.” In addition, “Host:www.example.com”indicates an exemplary host name stored in the memory unit (such as theflash memory 24) for accessing as a default.

The URL receiver 116 obtains the URL from the management server 2 as aresponse to the URL request described above. FIG. 11 is a diagramillustrating an exemplary URL of the app market server 3 received as aresponse to the URL request.

The screen information request transmitter 117 transmits a screeninformation request to the app market server 3. The screen informationcontains at least the dealer information described above and is used torequest screen information for providing an application. Morespecifically, the screen information request transmitter 117 transmitsthe aforementioned screen information request to the app market server 3specified by the URL received by the URL receiver 116. For example, thescreen information request transmitter 117 may access the app marketserver 3 using the HTTP redirect. That is, if the URL received by theURL receiver 116 is changed, the app market server 3 returns a responsecontaining the changed URL to the MFP 1, and thus, the MFP 1 (screeninformation request transmitter 117) can access the app market server 3using the URL described in this response. In this example, the screeninformation request further contains the device information forspecifying the MFP 1 and the regional information indicating the regionwhere the MFP 1 is used. FIG. 12 is a diagram illustrating an exemplaryscreen information request. In this example, the device information isthe device identification information (serial number) described above.

The screen information receiver 118 receives screen information forproviding an application specified by the dealer information containedin the screen information request from the app market server 3 as aresponse to the screen information request. A method of specifying theapplication using the dealer information contained in the screeninformation request will become apparent by reading the descriptionregarding the app market server 3 described below. In this example, thescreen information receiver 118 receives screen information serving as asource of the application list screen, such as display information foreach application available to the MFP 1 (including descriptioninformation such as an introduction message), various commands such asan installation command, and layout information representing a layout ofvarious display elements, as a response to the screen informationrequest. FIG. 13 is a diagram illustrating exemplary display informationreceived by the screen information receiver 118.

The display control unit 111 performs control for displaying a screen(application list screen) based on the screen information received bythe screen information receiver 118 on the operation panel 27. In thisexample, the display control unit 111 creates the application listscreen based on the screen information received by the screeninformation receiver 118 and performs control for displaying the createdapplication list screen on the operation panel 27.

FIG. 14 is a diagram illustrating an exemplary application list screen.In the example of FIG. 14, at least a name of the application and anapplication selection button 511 for selecting the application aredisplayed on the application list screen for each application availableto the MFP 1. In addition, in the example of FIG. 14, an updateselection button 521 for selecting an update of the application and adeletion selection button 531 for selecting deletion of the applicationis displayed on the application list screen.

If pressing of any one of the application selection buttons 511 isreceived, the display control unit 111 performs control for displayingthe installation instruction screen for displaying detailed contents ofthe corresponding application and receiving an installation executioninstruction on the operation panel 27. FIG. 15 is a diagram illustratingan exemplary installation instruction screen. In the example of FIG. 15,the installation instruction screen displays app description informationof the corresponding application and the installation button 512 forinstructing execution of installation. In this example, pressing of theinstallation button 512 means selection of the installation command.

In this example, if pressing of the installation button 512 is received,the display control unit 111 performs control for displaying aninstallation confirmation screen for finally confirming execution ofinstallation on the operation panel 27. FIG. 16 is a diagramillustrating an exemplary installation confirmation screen. In theexample of FIG. 16, the installation confirmation screen displays aconfirmation button 513 for instructing that execution of installationis finally confirmed. In this example, the installation command isattached to the confirmation button 513 in a JavaScript (registeredtrademark) format. If pressing of the confirmation button 513 isreceived, the display control unit 111 notifies the installer 119 of theinstallation command attached to the pressed confirmation button 513. Inaddition, the installer 119 executes this installation command.

The functions of each element of the MFP 1 described above (includingthe display control unit 111, the setting unit 112, the storage controlunit 113, the URL request transmitter 115, the URL receiver 116, thescreen information request transmitter 117, the screen informationreceiver 118, and the installer 119) are implemented when the CPU (11 or21) executes a program stored in a memory device (such as the ROM 12,the HDD 14, the ROM 22, and the flash memory 24). Alternatively, withoutlimiting thereto, for example, at least a part of the functions of eachelement of the MFP 1 may be implemented using a dedicated hardwarecircuit (such as a semiconductor integrated circuit). In addition, thesetting information storing unit 114 described above may be implemented,for example, using the HDD 14 of the main body 10 or using the flashmemory 24 of the operation unit 20. Note that, in this example, theaforementioned functions of the URL request transmitter 115, the URLreceiver 116, the screen information request transmitter 117, and thescreen information receiver 118 are implemented by combining the CPU 21and the communication I/F 25.

Next, a configuration of the management server 2 will be described. FIG.17 is a diagram illustrating an exemplary hardware configuration of themanagement server 2. As illustrated in FIG. 17, the management server 2has a CPU 211, a ROM 212, a RAM 213, a communication I/F 214, an inputunit 215, and a display unit 216. Note that, although a minimumconfiguration according to the embodiment is illustrated here, ahardware configuration of the management server 2 is not limitedthereto. The CPU 211 generally controls the operations of the managementserver 2. The ROM 212 is a nonvolatile memory that stores various datasuch as a program. The RAM 213 is a volatile memory serving as a workarea of various processes executed by the CPU 211. The communication I/F214 is an interface for communication with the network 8. The input unit215 is a device used to input a user's operation and includes, forexample, a mouse or a keyboard. The display unit 216 is a device fordisplaying various types of information and may include, for example, aliquid crystal display device or the like.

FIG. 18 is a diagram illustrating an exemplary function of themanagement server 2. As illustrated in FIG. 18, the management server 2has a connection relation information storing unit 221, a URL requestreceiver 222, a URL specifying unit 223, and a URL transmitter 224. Forsimplicity purposes, FIG. 18 mainly illustrates the function accordingto the embodiment. However, the functions of the management server 2 arenot limited thereto.

The connection relation information storing unit 221 stores connectionrelation information representing a correspondence relation between aURL for specifying the app market server 3 serving as a communicationdestination of the MFP 1 and at least one of the dealer information, theregional information, and the device information. According to theembodiment, the connection relation information storing unit 221 storesthe connection relation information in which each combination of thedevice identification information, the dealer information, and theregional information is associated with the URL (the URL that specifiesa location of the corresponding app market server 3 in the network 8).FIG. 19 is a diagram illustrating exemplary connection relationinformation according to the embodiment.

FIG. 18 will be described continuously. The URL request receiver 222 isan example of the “specification information request receiver” andreceives the URL request described above from the MFP 1. The URLspecifying unit 223 is an example of the “specification informationspecifying unit” and specifies the URL corresponding to the URL requestreceived by the URL request receiver 222 based on the connectionrelation information described above. In this example, the URLspecifying unit 223 specifies the URL corresponding to the combinationof the device identification information, the dealer information, andthe regional information contained in the URL request received by theURL request receiver 222 based on the connection relation informationstored in the connection relation information storing unit 221.

The URL transmitter 224 is an example of the “specification informationtransmitter” and transmits the URL specified by the URL specifying unit223 to the MFP 1 as a response to the URL request received by the URLrequest receiver 222.

The functions of each element of the management server 2 described above(including the URL request receiver 222, the URL specifying unit 223,and the URL transmitter 224) are implemented when the CPU 211 executesthe program stored in the ROM 212 or the like. However, without limitingthereto, for example, at least a part of the functions of each elementof the management server 2 described above may be implemented using adedicated hardware circuit (such as a semiconductor integrated circuit).In addition, the connection relation information storing unit 221 may beimplemented using a subsidiary memory unit such as the ROM 212 or theHDD. Note that, in this example, each function of the URL requestreceiver 222 and the URL transmitter 224 is implemented by combining theCPU 211 and the communication I/F 214.

For example, the functions of each element of the management server 2described above may be mounted in a plurality of servers in adistributed manner. That is, the management server 2 may include aplurality of servers (information processing apparatuses) having atleast a part of the functions of the URL request receiver 222, the URLspecifying unit 223, and the URL transmitter 224.

Next, a configuration of the app market server 3 will be described. FIG.20 is a diagram illustrating an exemplary hardware configuration of theapp market server 3. As illustrated in FIG. 20, the app market server 3includes a CPU 311, a ROM 312, a RAM 313, a communication I/F 314, aninput unit 315, and a display unit 316. Note that, although a minimumconfiguration according to the embodiment is illustrated here, ahardware configuration of the app market server 3 is not limited to sucha configuration. The CPU 311 generally controls the operations of theapp market server 3. The ROM 312 is a nonvolatile memory that storesvarious data such as a program. The RAM 313 is a volatile memory servingas a work area of various processes executed by the CPU 311. Thecommunication I/F 314 is an interface for communication with the network8. The input unit 315 is a device used to input a user's operation andincludes, for example, a mouse or a keyboard. The display unit 316 is adevice for displaying various types of information and may include, forexample, a liquid crystal display device or the like.

FIG. 21 is a diagram illustrating an exemplary function of the appmarket server 3. As illustrated in FIG. 21, the app market server 3 hasan application correspondence relation information storing unit 321, ascreen information request receiver 322, an application identificationinformation specifying unit 323, and a screen information transmitter324. Although functions according to the embodiment are mainlyillustrated in FIG. 21 for simplicity purposes, the functions of the appmarket server 3 are not limited thereto.

The application correspondence relation information storing unit 321stores application correspondence relation information representing acorrespondence relation between the dealer information and theapplication identification information for identifying an applicationavailable to the MFP 1. The application correspondence relationinformation according to the embodiment includes: first correspondencerelation information in which each piece of device information isassociated with the application identification information; and secondcorrespondence relation information in which each combination of theregional information and the dealer information is associated with theapplication identification information for identifying an availableapplication.

More specifically, the first correspondence relation informationaccording to the embodiment is configured of: a device model ID table asillustrated in FIG. 22 in which the device identification information(serial number) is associated with a device model ID for identifying aunit for managing the device model; and correspondence relationinformation (referred to as third correspondence relation informationfor simplicity purposes) as illustrated in FIG. 23 in which each devicemodel ID is associated with the application identification information.However, the present invention is not limited thereto. For example, thefirst correspondence relation information may be information in whicheach device identification information (that is, for each deviceinformation) is directly associated with the application identificationinformation.

The second correspondence relation information according to theembodiment is configured of: an organization ID table as illustrated inFIG. 24 in which each combination of the regional information and thedealer information is associated with an organization ID representingthe corresponding organization; and correspondence relation information(referred to as fourth correspondence relation information forsimplicity purposes) as illustrated in FIG. 25 in which eachorganization ID is associated with the application identificationinformation and availability information representing whether theapplication is available (whether the application can be downloaded tothe MFP 1). However, the present invention is not limited thereto. Forexample, the second correspondence relation information may beinformation in which each combination of the regional information andthe dealer information is directly associated with the applicationidentification information for identifying an available application. Theapplication correspondence relation information described above isassumed to be stored in the application correspondence relationinformation storing unit 321 in advance according to a user's(administrator's) operation of the app market server 3. As a method ofsetting the application correspondence relation information(registration method), various techniques known in the art may beemployed.

FIG. 21 will be described continuously. The screen information requestreceiver 322 receives the aforementioned screen information request fromthe MFP 1. The application identification information specifying unit323 specifies the application identification information correspondingto the dealer information contained in the screen information requestreceived by the screen information request receiver 322 based on theaforementioned application correspondence relation information. Morespecifically, the application identification information specifying unit323 refers to the first correspondence relation information describedabove so as to specify one or more pieces of the applicationidentification information associated with the device informationcontained in the screen information request received by the screeninformation request receiver 322. Further, the applicationidentification information specifying unit 323 refers to the secondcorrespondence relation information described above so as to specify oneor more pieces of the application identification information(application identification information for identifying an availableapplication) associated with a combination of the dealer information andthe regional information contained in the screen information request.Then, the application identification information specifying unit 323specifies, as the application identification information for identifyingan application available to the MFP 1, the application identificationinformation associated with one or more pieces of the applicationidentification information corresponding to the combination of thedealer information and the regional information contained in the screeninformation request out of one or more pieces of the applicationidentification information associated with the device informationcontained in the screen information request.

In this example, the application identification information specifyingunit 323 refers to the aforementioned device model ID table (FIG. 22)contained in the first correspondence relation information so as tospecify the device model ID corresponding to the device identificationinformation contained in the screen information request received by thescreen information request receiver 322. Then, the applicationidentification information specifying unit 323 refers to theaforementioned third correspondence relation information (FIG. 23)contained in the first correspondence relation information so as tospecify the application identification information associated with thespecified device model ID. In this manner, the applicationidentification information specifying unit 323 specifies one or morepieces of the application identification information using the firstcorrespondence relation information.

The application identification information specifying unit 323 refers tothe aforementioned organization ID table (FIG. 24) contained in thesecond correspondence relation information so as to specify anorganization ID corresponding to the combination of the regionalinformation and the dealer information contained in the screeninformation request received by the screen information request receiver322. Then, the application identification information specifying unit323 refers to the aforementioned fourth correspondence relationinformation contained in the second correspondence relation information(refer to FIG. 25) so as to specify, as the application identificationinformation for identifying the available application, the applicationidentification information associated with the combination of thespecified organization ID and the availability information representingthat the application is “available”. In this manner, the applicationidentification information specifying unit 323 specifies one or morepieces of the application identification information using the secondcorrespondence relation information.

The application identification information specifying unit 323specifies, as application identification information for identifying anapplication available to the MFP 1 of the request source of the screeninformation request, the application identification informationassociated with one or more pieces of the application identificationinformation specified using the second correspondence relationinformation out of one or more pieces of the application identificationinformation specified using the first correspondence relationinformation.

FIG. 21 will be described continuously. The screen informationtransmitter 324 transmits, to the MFP 1, the screen information forproviding the application identified by the application identificationinformation specified by the application identification informationspecifying unit 323 as a response to the screen information requestreceived by the screen information request receiver 322. In thisexample, the screen information transmitter 324 creates screeninformation for providing an application identified by the applicationidentification information specified by the application identificationinformation specifying unit 323 and transmits the created screeninformation to the MFP 1. In short, the screen information transmitter324 has a function of transmitting, to the MFP 1, the screen informationfor providing the application specified by the dealer informationcontained in the screen information request as a response to the screeninformation request received by the screen information request receiver322.

For example, the app market server 3 stores in advance the applicationdetail information in which each application identification informationis associated with the display information containing a display name, anintroduction message, a display image, and the like in advance asillustrated in FIG. 26. The screen information transmitter 324 refers tothis application detail information to thereby create the screeninformation containing the display information associated with theapplication identification information specified by the applicationidentification information specifying unit 323. The screen informationtransmitter 324 transmits, to the MFP 1, the screen information(information serving as a source of the application list screen)including the aforementioned display information, various commands suchas an installation command, layout information representing a layout ofvarious display elements, and the like. The MFP 1 creates theapplication list screen based on the screen information received fromthe app market server 3 and displays the created application list screenon the operation panel 27.

The functions of each element of the aforementioned app market server 3(including the screen information request receiver 322, the applicationidentification information specifying unit 323, and the screeninformation transmitter 324) are implemented when the CPU 311 executes aprogram stored in the ROM 312 and the like. However, the presentinvention is not limited thereto. For example, at least a part of thefunctions of each element of the app market server 3 described above maybe implemented using a dedicated hardware circuit (such as asemiconductor integrated circuit). In addition, the aforementionedapplication correspondence relation information storing unit 321 may beimplemented using a subsidiary memory unit such as the ROM 312 or theHDD. Note that, in this example, the functions of the screen informationrequest receiver 322 and the screen information transmitter 324 areimplemented by combining the CPU 311 and the communication I/F 314.

For example, the functions of each element of the app market server 3described above may be mounted in a plurality of servers in adistributed manner. That is, the app market server 3 may include aplurality of servers (information processing apparatuses) and may haveat least a part of the functions of the screen information requestreceiver 322, the application identification information specifying unit323, and the screen information transmitter 324 described above.

Next, a configuration of the application server 7 will be described.FIG. 27 is a diagram illustrating an exemplary hardware configuration ofthe application server 7. As illustrated in FIG. 27, the applicationserver 7 includes a CPU 411, a ROM 412, a RAM 413, a communication I/F414, an input unit 415, and a display unit 416. Note that, although aminimum configuration according to the embodiment is illustrated here,the hardware configuration of the application server 7 is not limitedthereto. The CPU 411 generally controls the operations of theapplication server 7. The ROM 412 is a nonvolatile memory that storesvarious data such as a program. The RAM 413 is a volatile memory servingas a work area of various processes executed by the CPU 411. Thecommunication I/F 414 is an interface for communication with the network8. The input unit 415 is a device used to input a user's operation andincludes, for example, a mouse or a keyboard. The display unit 416 is adevice for displaying various types of information and may include, forexample, a liquid crystal display device or the like.

FIG. 28 is a diagram illustrating an exemplary function of theapplication server 7. As illustrated in FIG. 28, the application server7 has an application storing unit 421, an application request receiver422, and an application transmitter 423. Although FIG. 28 mainlyillustrates the functions according to the embodiment for simplicitypurposes, the functions of the application server 7 are not limitedthereto.

The application storing unit 421 stores a plurality of applications. Theapplication request receiver 422 receives the aforementioned applicationrequest from the MFP 1. The application transmitter 423 transmits theapplication requested by the application request received by theapplication request receiver 422 to the MFP 1 serving as a requestingsource of the application request out of a plurality of applicationsstored in the application storing unit 421.

The functions of each element of the application server 7 describedabove (including the functions of the application request receiver 422and the application transmitter 423) are implemented when the CPU 411executes the program stored in the ROM 412 or the like. However, thepresent invention is not limited thereto. For example, at least a partof the functions of each element of the application server 7 describedabove may be implemented using a dedicated hardware circuit (such as asemiconductor integrated circuit). In addition, the application storingunit 421 may be implemented using a subsidiary memory unit such as theROM 412 or the HDD. Note that, in this example, the functions of theapplication request receiver 422 and the application transmitter 423 areimplemented by combining the CPU 411 and the communication I/F 414.

For example, the functions of each element of the application server 7described above may be mounted in a plurality of servers in adistributed manner. That is, the application server 7 may include aplurality of servers (information processing apparatuses) having atleast a part of the functions of the application request receiver 422and the application transmitter 423 described above. Furthermore, forexample, the application server 7 and the app market server 3 may beintegrated into the same server.

FIG. 29 is a sequence diagram illustrating an exemplary operationprocedure of the information processing system 100. Here, a descriptionwill be made about an operation procedure at the time of the second andsubsequent activations of the app market application. First, if a usertouches an icon 5 on the operational screen (refer to FIG. 5) (step S1),the app market application is activated. Then, the activated app marketapplication transmits the aforementioned URL request including theregional information stored in the setting information storing unit 114to the management server 2 (step S2).

The management server 2 having received the URL request specifies theURL corresponding to the regional information contained in the receivedURL request (step S3). Details of this process have been describedabove. Then, the management server 2 transmits the URL specified in stepS3 as a response to the URL request (step S4).

Then, the app market application instructs the browser application totransmit the aforementioned screen information request to the app marketserver 3 specified by the URL received from the management server 2 instep S4 (step S11). The browser application having received thisinstruction transmits the aforementioned screen information request tothe app market server 3 specified by the URL received from themanagement server 2 in step S4 (step S12).

The app market server 3 having received the screen information requestspecifies an application available to the MFP 1 by using, as a key, thedealer information, the regional information, the device information (inthis example, the device identification information) contained in thereceived screen information request (step S13). Details of this processhave been already described above. Then, the app market server 3transmits the screen information for providing one or more applicationsspecified in step S13 to the MFP 1 as a response to the screeninformation request (step S14). The MFP 1 having received the screeninformation as a response to the screen information request creates anapplication list screen based on the received screen information anddisplays this application list screen on the operation panel 27 (stepS15).

FIG. 30 is a sequence diagram illustrating an exemplary operationprocedure of the information processing system when a confirmationbutton 513 for confirming installation of any one of the applications onthe application list screen is pressed. When a user presses theconfirmation button 513 described above (step S21), the installationcommand attached to the confirmation button 513 is given to theinstaller as described above (step S22). The installer transmits theaforementioned application request to the application server 7 (stepS23), and receives (downloads) the application from the applicationserver 7 as a response thereto (step S24). Then, the installer performscontrol for installing the application received in step S24 in the MFP 1(step S25).

As described above, according to the embodiment, the MFP 1 transmits, tothe app market server 3, the screen information request that containsthe dealer information representing a dealer that sells the MFP 1 and isused to request the screen information for providing the application.The app market server 3 specifies the application identificationinformation corresponding to the dealer information contained in thescreen information request received from the MFP 1 based on theapplication correspondence relation information representing acorrespondence relation between the dealer information and theapplication identification information for identifying the applicationavailable to the MFP 1. The app market server 3 transmits, to the MFP 1,the screen information for providing the application identified by thespecified application identification information. Therefore, accordingto the embodiment, even when the application used by the MFP 1 isdifferent for each dealer that sells the MFP 1, only applicationsproperly available to the MFP 1 are displayed on the application listscreen on the operation panel 27 of the MFP 1. Therefore, it is possibleto introduce applications properly available to the MFP 1.

Furthermore, according to the embodiment described above, for example,even when the app market server 3 for providing the application listscreen to any MFP 1 is changed depending on a change of the number ofapp market servers 3 or the management area, the management server 2 canstore the aforementioned connection relation information (informationrepresenting a correspondence relation between the regional informationand the URL) by reflecting such a change. Therefore, the MFP 1 canobtain the URL for specifying the application server 7 serving as acommunication destination regardless of a condition of the side thatprovides the application list screen.

Second Embodiment

Next, a second embodiment will be described. Description of common partwith the above described first embodiment will be omitted. Connectionrelation information according to the second embodiment is differentfrom that of the first embodiment in that each piece of the dealerinformation is associated with the URL (the URL that specifies alocation of the corresponding app market server 3 in the network 8).FIG. 31 is a diagram illustrating exemplary connection relationinformation according to the second embodiment. Without limitingthereto, for example, the connection relation information may beinformation in which each combination of the dealer information and theregional information is associated with the URL.

In short, it is sufficient that the connection relation information isinformation representing a correspondence relation between the URL thatspecifies the app market server 3 serving as a communication destinationof the MFP 1 and at least one of the dealer information, the regionalinformation, and the device information. Other parts are similar tothose of the first embodiment described above.

Third Embodiment

Next, a third embodiment will be described. Description of common partwith the above described embodiments will be omitted. Connectionrelation information according to the third embodiment is different fromthat of the first embodiment in that each piece of the deviceinformation is associated with the URL (the URL that specifies alocation of the corresponding app market server 3 in the network 8).FIG. 32 is a diagram illustrating exemplary connection relationinformation according to the third embodiment. In the example of FIG.32, the connection relation information is information in which eachpiece of device identification information (each piece of the deviceinformation) with the URL. However, the present invention is not limitedthereto. For example, the connection relation information may beinformation in which each combination of the device information and theregional information is associated with the URL, or may be informationin which each combination of the device information and the dealerinformation is associated with the URL. Alternatively, the connectionrelation information may be information in which each combination of thedevice information, the regional information, and the dealer informationis associated with the URL.

In short, it is sufficient that the connection relation information isinformation representing a correspondence relation between the URLspecifying the app market server 3 serving as a communicationdestination of the MFP 1 and at least one of the dealer information, theregional information, and the device information. Other parts aresimilar to those of the first embodiment described above.

In the embodiments described above, the main body 10 and the operationunit 20 are operated independently using other operating systems.However, the present invention is not limited thereto. For example, themain body 10 and the operation unit 20 may be operated using the sameoperating system. That is, the main body 10 and the operation unit 20may be integrated into a single body.

The program executed in the information processing system 100 accordingto the embodiments described above (including the MFP 1, the managementserver 2, the app market server 3, and the application server 7) may berecorded in a computer readable recording medium such as a compact discread-only memory (CD-ROM), a flexible disk (FD), a CD-recordable (CD-R),a digital versatile disk (DVD), and a universal serial bus (USB) in aninstallable or executable file format or may be provided in adistributed format through a network such as the Internet. In addition,various programs may be integrated into a ROM and the like in advance.

According to the present invention, it is possible to introduce anapplication properly available to the device.

The above-described embodiments are illustrative and do not limit thepresent invention. Thus, numerous additional modifications andvariations are possible in light of the above teachings. For example, atleast one element of different illustrative and exemplary embodimentsherein may be combined with each other or substituted for each otherwithin the scope of this disclosure and appended claims. Further,features of components of the embodiments, such as the number, theposition, and the shape are not limited the embodiments and thus may bepreferably set. It is therefore to be understood that within the scopeof the appended claims, the disclosure of the present invention may bepracticed otherwise than as specifically described herein.

The method steps, processes, or operations described herein are not tobe construed as necessarily requiring their performance in theparticular order discussed or illustrated, unless specificallyidentified as an order of performance or clearly identified through thecontext. It is also to be understood that additional or alternativesteps may be employed.

Further, any of the above-described apparatus, devices or units can beimplemented as a hardware apparatus, such as a special-purpose circuitor device, or as a hardware/software combination, such as a processorexecuting a software program.

Further, as described above, any one of the above-described and othermethods of the present invention may be embodied in the form of acomputer program stored in any kind of storage medium. Examples ofstorage mediums include, but are not limited to, flexible disk, harddisk, optical discs, magneto-optical discs, magnetic tapes, nonvolatilememory, semiconductor memory, read-only-memory (ROM), etc.

Alternatively, any one of the above-described and other methods of thepresent invention may be implemented by an application specificintegrated circuit (ASIC), a digital signal processor (DSP) or a fieldprogrammable gate array (FPGA), prepared by interconnecting anappropriate network of conventional component circuits or by acombination thereof with one or more conventional general purposemicroprocessors or signal processors programmed accordingly.

Each of the functions of the described embodiments may be implemented byone or more processing circuits or circuitry. Processing circuitryincludes a programmed processor, as a processor includes circuitry. Aprocessing circuit also includes devices such as an application specificintegrated circuit (ASIC), digital signal processor (DSP), fieldprogrammable gate array (FPGA) and conventional circuit componentsarranged to perform the recited functions.

What is claimed is:
 1. An information processing system comprising: oneor more devices; and an information processing apparatus connectable tothe devices through a network, wherein the information processingapparatus comprises: a screen information request receiver configured toreceive, from the device, a screen information request used to requestscreen information for providing an application, the screen informationincluding at least dealer information representing a dealer that sellsthe device; an application identification information specifying unitconfigured to specify application identification informationcorresponding to the dealer information included in the screeninformation request based on application correspondence relationinformation representing a correspondence relation between the dealerinformation and the application identification information identifyingan application available to the device; and a screen informationtransmitter configured to transmit, to the device, the screeninformation for providing the application identified by the applicationidentification information specified by the application identificationinformation specifying unit as a response to the screen informationrequest received by the screen information request receiver, and thedevice comprises: a screen information request transmitter configured totransmit the screen information request to the information processingapparatus; a screen information receiver configured to receive thescreen information from the information processing apparatus as aresponse to the screen information request; and a display control unitconfigured to perform control for displaying a screen based on thescreen information received by the screen information receiver.